Skip to content

Conversation

@mbkuhn
Copy link
Contributor

@mbkuhn mbkuhn commented Oct 3, 2025

Summary

Needed to implement coupling with Kynema as an aero + turbine model. To avoid duplicating code and to ensure I was doing the right things, I templated the existing OpenFAST interface and made the Kynema interface another specialization of that template. Kynema does a lot less "under the hood" compared to OpenFAST, especially for initialization, so the template specialization is much more involved. The *Iface.cpp and *_types.H files are the main ones that have to be changed depending on the template; the others are simpler and mostly for instantiation.

Pull request type

Please check the type of change introduced:

  • Bugfix
  • Feature
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Documentation content changes
  • Other (please describe):

Checklist

The following is included:

  • new unit-test(s)
  • new regression test(s)
  • documentation for new capability

This PR was tested by running:

  • the unit tests
    • on GPU
    • on CPU
  • the regression tests
    • on GPU
    • on CPU

Additional background

Issue Number:

@mbkuhn
Copy link
Contributor Author

mbkuhn commented Oct 3, 2025

At this point, the templates for OpenFAST are basically done, though they will probably be tweaked later in the process. Both act_uniform_alm reg tests pass!

@mbkuhn mbkuhn marked this pull request as ready for review November 19, 2025 17:38
@mbkuhn mbkuhn requested a review from marchdf November 19, 2025 17:38
@mbkuhn
Copy link
Contributor Author

mbkuhn commented Nov 19, 2025

Derek Slaughter already looked over the Kynema interface calls

Copy link
Contributor

@marchdf marchdf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing work! Well done!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants